在Typecho中使用:
<<span class="hljs-function"><span class="hljs-title">meta</span> property="og:image" content="//example.org/og/?<span class="hljs-built_in">title</span>=<?php $this-></span><span class="hljs-function"><span class="hljs-title">title</span>(); ?>&des=<?php $this-></span>description(); ?><span class="hljs-string">"/></span>
<span class="php"><span class="hljs-meta"><?php</span>
<span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">og</span><span class="hljs-params">($title, $des)</span> </span>{
$img = imagecreatefrompng(<span class="hljs-string">'./bg.png'</span>);
$black = imagecolorallocate($img, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>);
$title_font = <span class="hljs-string">'./ZhanKuKuaiLeTi2016XiuDingBan-1.ttf'</span>;
$desc_font = <span class="hljs-string">'./ZhanKuKuaiLeTi2016XiuDingBan-1.ttf'</span>;
$title_lines = explode(<span class="hljs-string">"\n"</span>, wordwrap($title, <span class="hljs-number">30</span>, <span class="hljs-string">"\n"</span>, <span class="hljs-keyword">true</span>));
$desc_lines = explode(<span class="hljs-string">"\n"</span>, wordwrap($des, <span class="hljs-number">60</span>, <span class="hljs-string">"\n"</span>, <span class="hljs-keyword">true</span>));
$title_y = <span class="hljs-number">60</span>;
$desc_y = <span class="hljs-number">200</span>;
<span class="hljs-keyword">foreach</span> ($title_lines <span class="hljs-keyword">as</span> $line) {
imagettftext($img, <span class="hljs-number">55</span>, <span class="hljs-number">0</span>, <span class="hljs-number">10</span>, $title_y, $black, $title_font, $line);
$title_y += <span class="hljs-number">65</span>;
}
<span class="hljs-keyword">foreach</span> ($desc_lines <span class="hljs-keyword">as</span> $line) {
imagettftext($img, <span class="hljs-number">25</span>, <span class="hljs-number">0</span>, <span class="hljs-number">10</span>, $desc_y, $black, $desc_font, $line);
$desc_y += <span class="hljs-number">30</span>;
}
header(<span class="hljs-string">'Content-Type: image/png'</span>);
imagepng($img);
imagedestroy($img);
}
<span class="hljs-comment">// Retrieve title and description from URL parameters</span>
$title = <span class="hljs-keyword">isset</span>($_GET[<span class="hljs-string">'title'</span>]) ? $_GET[<span class="hljs-string">'title'</span>] : <span class="hljs-string">'Default Title'</span>;
$des = <span class="hljs-keyword">isset</span>($_GET[<span class="hljs-string">'des'</span>]) ? $_GET[<span class="hljs-string">'des'</span>] : <span class="hljs-string">'Default Description'</span>;
<span class="hljs-comment">// Example usage:</span>
og($title, $des);
<span class="hljs-meta">?></span></span>